/**
 * \file dunQueue.h
 * \brief Construction and use of a queue.
 * \author Panos Baroudjian
**/

#ifndef DUNQUEUE_H_
# define DUNQUEUE_H_

typedef struct s_queue *dunQueue;

struct s_queue
{
  int		cont;
  dunQueue	next, prev;
};

#define queueNew() NULL
#define queueIsEmpty(q) !(q)

int   queuePop(dunQueue *q);
dunQueue queuePush(int x, dunQueue q);

dunQueue	stackPush(int x, dunQueue s);
int			stackPeak(dunQueue s);
int			stackPop(dunQueue *s);

#endif /* !DUNQUEUE_H_ */
